package com.weiqiao.mall.service;

import com.weiqiao.mall.domain.ReceiptEntity;
import com.weiqiao.mall.service.vo.ReceiptVO;
import org.bson.Document;
import org.bson.conversions.Bson;

import java.util.List;
import java.util.Map;

public interface IReceiptService {

    /**
     * 分页查询提现列表
     *
     * @param receiptVO
     * @return
     */
    Map findReceiptList(ReceiptVO receiptVO);

    /**
     * 通过id查询获取单个提现详情
     *
     * @param company_id
     * @param receipt_no
     * @return
     */
    ReceiptEntity queryOneReceiptById(int company_id, String receipt_no);

    /**
     * 修改多个
     *
     * @param company_id
     * @param filter
     * @param doc
     * @return
     */
    boolean updateRecepits(int company_id, Bson filter, Document doc);

    /**
     * 通过多个编号查找
     *
     * @param company_id
     * @param receipt_nos
     * @return
     */
    List<ReceiptEntity> queryOneReceiptByIds(int company_id,  List<String> receipt_nos);

    /**
     * 驳回提现申请
     *
     * @param receiptVO
     * @return
     */
    boolean rebutRecepit(ReceiptVO receiptVO);

    /**
     * 审核当前余额提现
     *
     * @param receiptVO
     * @return
     */
    boolean updateDealStatusById(ReceiptVO receiptVO);

    /**
     * 审核当前余额提现
     *
     * @param company_id
     * @param filter
     * @return
     */
    int findRecepitSize(int company_id, Bson filter);
}
